[INFO] fetching crate bigqueue 0.0.2...
[INFO] checking bigqueue-0.0.2 against try#21cad1f647cfd05a566220f933edd88a53e50bcf for pr-129249-1
[INFO] extracting crate bigqueue 0.0.2 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate bigqueue 0.0.2
[INFO] finished tweaking crates.io crate bigqueue 0.0.2
[INFO] tweaked toml for crates.io crate bigqueue 0.0.2 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate bigqueue 0.0.2 on toolchain 21cad1f647cfd05a566220f933edd88a53e50bcf
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 69 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.2.11 (available: v0.8.2)
[INFO] [stderr]       Adding lru v0.1.17 (available: v0.18.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6
[INFO] running `Command { std: "docker" "start" "fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6" "/opt/rustwide/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6" "/opt/rustwide/cargo-home/bin/cargo" "+21cad1f647cfd05a566220f933edd88a53e50bcf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]     Checking memchr v2.8.2
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling cast v0.2.7
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking gimli v0.32.3
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking rustc-demangle v0.1.27
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]     Checking hashbrown v0.5.0
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking criterion-plot v0.3.1
[INFO] [stderr]     Checking memmap v0.7.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking lru v0.1.17
[INFO] [stderr]     Checking rand_xoshiro v0.1.0
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking addr2line v0.25.1
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking bigqueue v0.0.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/bigqueue.rs:234:26
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let m = unsafe { (&mut (*self.q_head.get()).mmap) };
[INFO] [stdout]     |                          ^                              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 234 -         let m = unsafe { (&mut (*self.q_head.get()).mmap) };
[INFO] [stdout] 234 +         let m = unsafe { &mut (*self.q_head.get()).mmap };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/bigqueue.rs:239:26
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let m = unsafe { (&mut (*self.q_tail.get())) };
[INFO] [stdout]     |                          ^                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 239 -         let m = unsafe { (&mut (*self.q_tail.get())) };
[INFO] [stdout] 239 +         let m = unsafe { &mut (*self.q_tail.get()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/bigqueue.rs:357:41
[INFO] [stdout]     |
[INFO] [stdout] 357 |     fn read_length(&mut self) -> Option<(usize)> {
[INFO] [stdout]     |                                         ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 357 -     fn read_length(&mut self) -> Option<(usize)> {
[INFO] [stdout] 357 +     fn read_length(&mut self) -> Option<usize> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_arenas`
[INFO] [stdout]   --> src/bigqueue.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let num_arenas = t_aid + 1 - h_aid;
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_arenas`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `tail` is never read
[INFO] [stdout]   --> src/bigqueue.rs:59:55
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut tail: Option<Rc<UnsafeCell<Arena>>> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 64 |         tail = Some(arc.clone());
[INFO] [stdout]    |         ---- `tail` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `head` is never read
[INFO] [stdout]   --> src/bigqueue.rs:60:55
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let mut head: Option<Rc<UnsafeCell<Arena>>> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 70 |             head = Some(arc);
[INFO] [stdout]    |             ---- `head` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_bytes` is never used
[INFO] [stdout]    --> src/lib.rs:212:4
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn read_bytes(mmap: &MmapMut, offset: usize, length: u64) -> Option<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_arena_backed_file` is never used
[INFO] [stdout]    --> src/bigqueue.rs:302:8
[INFO] [stdout]     |
[INFO] [stdout] 214 | impl BigQueue {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 302 |     fn delete_arena_backed_file(&self, aid: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]    --> src/bigqueue.rs:431:5
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub struct Index {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 431 |     file: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `flush` is never used
[INFO] [stdout]    --> src/bigqueue.rs:518:12
[INFO] [stdout]     |
[INFO] [stdout] 477 | impl Arena {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 518 |     pub fn flush(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lib.rs:141:10
[INFO] [stdout]     |
[INFO] [stdout] 141 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Fail` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 142 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lib.rs:141:10
[INFO] [stdout]     |
[INFO] [stdout] 141 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Display` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 142 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         self.write_bytes(n_offset, bytes);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let _ = self.write_bytes(n_offset, bytes);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:162:17
[INFO] [stdout]     |
[INFO] [stdout] 162 |                 self.flip_head_page_to(head_aid);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 162 |                 let _ = self.flip_head_page_to(head_aid);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |         self.index.set_head(aid, offset);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 222 |         let _ = self.index.set_head(aid, offset);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         self.index.set_tail(aid, offset);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 228 |         let _ = self.index.set_tail(aid, offset);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         self.get_tail().write_u64_at(i_offset, length);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let _ = self.get_tail().write_u64_at(i_offset, length);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:361:13
[INFO] [stdout]     |
[INFO] [stdout] 361 |             self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 361 |             let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:367:17
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:391:21
[INFO] [stdout]     |
[INFO] [stdout] 391 |                     self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 391 |                     let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:400:25
[INFO] [stdout]     |
[INFO] [stdout] 400 |                         self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 400 |                         let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion v0.2.11
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/bigqueue.rs:234:26
[INFO] [stdout]     |
[INFO] [stdout] 234 |         let m = unsafe { (&mut (*self.q_head.get()).mmap) };
[INFO] [stdout]     |                          ^                              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 234 -         let m = unsafe { (&mut (*self.q_head.get()).mmap) };
[INFO] [stdout] 234 +         let m = unsafe { &mut (*self.q_head.get()).mmap };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/bigqueue.rs:239:26
[INFO] [stdout]     |
[INFO] [stdout] 239 |         let m = unsafe { (&mut (*self.q_tail.get())) };
[INFO] [stdout]     |                          ^                         ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 239 -         let m = unsafe { (&mut (*self.q_tail.get())) };
[INFO] [stdout] 239 +         let m = unsafe { &mut (*self.q_tail.get()) };
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/bigqueue.rs:357:41
[INFO] [stdout]     |
[INFO] [stdout] 357 |     fn read_length(&mut self) -> Option<(usize)> {
[INFO] [stdout]     |                                         ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 357 -     fn read_length(&mut self) -> Option<(usize)> {
[INFO] [stdout] 357 +     fn read_length(&mut self) -> Option<usize> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_arenas`
[INFO] [stdout]   --> src/bigqueue.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let num_arenas = t_aid + 1 - h_aid;
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_arenas`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `tail` is never read
[INFO] [stdout]   --> src/bigqueue.rs:59:55
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut tail: Option<Rc<UnsafeCell<Arena>>> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 64 |         tail = Some(arc.clone());
[INFO] [stdout]    |         ---- `tail` is overwritten here before the previous value is read
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `head` is never read
[INFO] [stdout]   --> src/bigqueue.rs:60:55
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let mut head: Option<Rc<UnsafeCell<Arena>>> = None;
[INFO] [stdout]    |                                                       ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 70 |             head = Some(arc);
[INFO] [stdout]    |             ---- `head` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_bytes` is never used
[INFO] [stdout]    --> src/lib.rs:212:4
[INFO] [stdout]     |
[INFO] [stdout] 212 | fn read_bytes(mmap: &MmapMut, offset: usize, length: u64) -> Option<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delete_arena_backed_file` is never used
[INFO] [stdout]    --> src/bigqueue.rs:302:8
[INFO] [stdout]     |
[INFO] [stdout] 214 | impl BigQueue {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 302 |     fn delete_arena_backed_file(&self, aid: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]    --> src/bigqueue.rs:431:5
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub struct Index {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] 431 |     file: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lib.rs:141:10
[INFO] [stdout]     |
[INFO] [stdout] 141 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Fail` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 142 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lib.rs:141:10
[INFO] [stdout]     |
[INFO] [stdout] 141 | #[derive(Fail, Debug)]
[INFO] [stdout]     |          ^---
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Display` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 142 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         self.write_bytes(n_offset, bytes);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 147 |         let _ = self.write_bytes(n_offset, bytes);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:162:17
[INFO] [stdout]     |
[INFO] [stdout] 162 |                 self.flip_head_page_to(head_aid);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 162 |                 let _ = self.flip_head_page_to(head_aid);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |         self.index.set_head(aid, offset);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 222 |         let _ = self.index.set_head(aid, offset);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         self.index.set_tail(aid, offset);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 228 |         let _ = self.index.set_tail(aid, offset);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         self.get_tail().write_u64_at(i_offset, length);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let _ = self.get_tail().write_u64_at(i_offset, length);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:361:13
[INFO] [stdout]     |
[INFO] [stdout] 361 |             self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 361 |             let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:367:17
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:391:21
[INFO] [stdout]     |
[INFO] [stdout] 391 |                     self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 391 |                     let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:400:25
[INFO] [stdout]     |
[INFO] [stdout] 400 |                         self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 400 |                         let _ = self.flip_head_page_to(self.head_aid + 1);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:547:9
[INFO] [stdout]     |
[INFO] [stdout] 547 |         qi.set_head(1, 3);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 547 |         let _ = qi.set_head(1, 3);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:548:9
[INFO] [stdout]     |
[INFO] [stdout] 548 |         qi.set_tail(1, 4);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 548 |         let _ = qi.set_tail(1, 4);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:569:9
[INFO] [stdout]     |
[INFO] [stdout] 569 |         t.write_u64_at(0, 100u64);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 569 |         let _ = t.write_u64_at(0, 100u64);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> src/bigqueue.rs:570:9
[INFO] [stdout]     |
[INFO] [stdout] 570 |         t.write_u64_at(8, 10u64);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 570 |         let _ = t.write_u64_at(8, 10u64);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.95s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6", kill_on_drop: false }`
[INFO] [stdout] fb2a4dad56e3f7740dc0ec790acc86ca9a86f916ef9b403e256b2904f00857c6
